package com.aizuda.boot.modules.common.constant.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @Author sangyirong
 * @ClassName OptionTypeEnum
 * @Version 1.0
 * @Date 2025/5/20 13:36
 */
@Getter
@AllArgsConstructor
public enum NodeTypeEnum {
    START("START", "开始节点",null),
    SUBMIT("SUBMIT", "提交节点","{\"cc\":null,\"controls\":[{\"operation\":\"WITHDRAW\",\"enabled\":true,\"configJson\":{\"edit\":false}},{\"operation\":\"CC\",\"enabled\":true},{\"operation\":\"URGE\",\"enabled\":true},{\"operation\":\"INVALID\",\"enabled\":true}],\"assignees\":[]}"),
    APPROVE("APPROVE", "审批节点","{\"controls\":[{\"operation\":\"AGREE\",\"enabled\":true},{\"operation\":\"REJECT\",\"enabled\":true,\"configJson\":{\"refuseTo\":{\"label\":\"本节点可拒绝至\",\"required\":true,\"options\":[{\"label\":\"提交节点\",\"checked\":true,\"disabled\":true},{\"label\":\"指定节点\",\"checked\":false,\"disabled\":true}]},\"resubmitMethod\":{\"label\":\"重新提交的方式（在勾选拒绝至指定节点后不支持该能力）\",\"required\":true,\"options\":[{\"label\":\"流程重新执行\",\"checked\":true,\"disabled\":true},{\"label\":\"直接返回当前节点\",\"checked\":false,\"disabled\":false}]},\"resubmitNegotiation\":{\"label\":\"重新提交是否进入协商\",\"required\":true,\"options\":[{\"label\":\"申请人可选是否协商\",\"checked\":true},{\"label\":\"申请人不可协商\",\"checked\":false},{\"label\":\"审批人可选是否允许协商\",\"checked\":false}]}}},{\"operation\":\"NEGOTIATE\",\"enabled\":false},{\"operation\":\"ADD_SIGN\",\"enabled\":true,\"configJson\":{\"approvalInfoEditPermission\":{\"label\":\"审批信息编辑权限\",\"required\":true,\"options\":[{\"label\":\"加签人可编辑审批信息\",\"checked\":true},{\"label\":\"加签人不可编辑审批信息\",\"checked\":false},{\"label\":\"审批人可选加签人是否可编辑审批信息\",\"checked\":false}]}}},{\"operation\":\"CC\",\"enabled\":true},{\"operation\":\"URGE\",\"enabled\":true},{\"operation\":\"TRANSFER\",\"enabled\":true}],\"cc\":null,\"assignees\":[{\"approvalMode\":\"SERIAL\",\"emptyAssigneeStrategy\":\"ADVANCED_SETTINGS\",\"selfApprovalStrategy\":\"ALLOW\",\"negotiationConfirmedStrategy\":\"REQUIRE_APPROVAL\"}]}"),
    SEAL("SEAL", "盖章节点","{\"controls\":[{\"operation\":\"SEAL\",\"enabled\":true},{\"operation\":\"REJECT\",\"enabled\":true,\"configJson\":{\"refuseTo\":{\"label\":\"本节点可拒绝至\",\"required\":true,\"options\":[{\"label\":\"提交节点\",\"checked\":true},{\"label\":\"指定节点\",\"checked\":false}]},\"resubmitMethod\":{\"label\":\"重新提交的方式（在勾选拒绝至指定节点后不支持该能力）\",\"required\":true,\"options\":[{\"label\":\"流程重新执行\",\"checked\":true,\"disabled\":true},{\"label\":\"直接返回当前节点\",\"checked\":false}]}}},{\"operation\":\"ADD_SIGN\",\"enabled\":true,\"configJson\":{\"approvalInfoEditPermission\":{\"label\":\"审批信息编辑权限\",\"required\":true,\"options\":[{\"label\":\"加签人可编辑审批信息\",\"checked\":true},{\"label\":\"加签人不可编辑审批信息\",\"checked\":false},{\"label\":\"审批人可选加签人是否可编辑审批信息\",\"checked\":false}]}}},{\"operation\":\"CC\",\"enabled\":true},{\"operation\":\"TRANSFER\",\"enabled\":true},{\"operation\":\"OCR_COMPARE\",\"enabled\":true,\"configJson\":{\"noOcrReason\":{\"label\":\"不使用OCR比对需提交原因\",\"checked\":true,\"description\":\"可选择原因包括页数过多、胶装合同、复写纸合同、扫描件盖章、上传扫描件失败、OCR比对失败及其他原因\"},\"compareMethod\":{\"label\":\"选择比对方式\",\"required\":true,\"options\":[{\"label\":\"将主合同与附件合并上传比对\",\"checked\":true},{\"label\":\"将主合同与附件分开上传比对\",\"checked\":false}]}}},{\"operation\":\"CHECK_FORM\",\"enabled\":true}],\"cc\":null,\"assignees\":[{\"approvalMode\":\"SERIAL\",\"emptyAssigneeStrategy\":\"ADVANCED_SETTINGS\"}]}"),
    ARCHIVE("ARCHIVE", "归档节点","{\"controls\":[{\"operation\":\"ARCHIVE\",\"enabled\":true},{\"operation\":\"REJECT\",\"enabled\":true,\"configJson\":{\"refuseTo\":{\"label\":\"本节点可拒绝至\",\"required\":true,\"options\":[{\"label\":\"提交节点\",\"checked\":true},{\"label\":\"指定节点\",\"checked\":false}]},\"resubmitMethod\":{\"label\":\"重新提交的方式（在勾选拒绝至指定节点后不支持该能力）\",\"required\":true,\"options\":[{\"label\":\"流程重新执行\",\"checked\":true,\"disabled\":true},{\"label\":\"直接返回当前节点\",\"checked\":false}]}}},{\"operation\":\"ADD_SIGN\",\"enabled\":true,\"configJson\":{\"approvalInfoEditPermission\":{\"label\":\"审批信息编辑权限\",\"required\":true,\"options\":[{\"label\":\"加签人可编辑审批信息\",\"checked\":true},{\"label\":\"加签人不可编辑审批信息\",\"checked\":false},{\"label\":\"审批人可选加签人是否可编辑审批信息\",\"checked\":false}]}}},{\"operation\":\"CC\",\"enabled\":true},{\"operation\":\"TRANSFER\",\"enabled\":true},{\"operation\":\"UPLOAD_SCAN\",\"enabled\":true,\"configJson\":{\"isRequiredUpload\":{\"label\":\"是否必传\",\"required\":true,\"options\":[{\"label\":\"必须上传\",\"checked\":true,\"description\":\"上传扫描件才可归档\"},{\"label\":\"可选上传\",\"checked\":false,\"description\":\"可点击“无需上传”完成归档\"}]},\"uploadType\":{\"label\":\"上传形式\",\"required\":true,\"options\":[{\"label\":\"将主文件与附件合并扫描上传\",\"checked\":true},{\"label\":\"将主文件与附件分开扫描上传\",\"checked\":false}]}}},{\"operation\":\"OCR_COMPARE\",\"enabled\":true,\"configJson\":{\"noOcrReason\":{\"label\":\"不使用OCR比对需提交原因\",\"checked\":true,\"description\":\"可选择原因包括页数过多、胶装合同、复写纸合同、扫描件盖章、上传扫描件失败、OCR比对失败及其他原因\"}}},{\"operation\":\"CHECK_FORM\",\"enabled\":true}],\"cc\":null,\"assignees\":[{\"approvalMode\":\"SERIAL\",\"emptyAssigneeStrategy\":\"ADVANCED_SETTINGS\"}]}"),
    END("END", "结束节点",null),
    CC("CC", "抄送节点",null),
    BRANCH("BRANCH", "分支节点",null);

    private final String code;
    private final String msg;

    private final String template;
} 